#include "widget.h"
#include "ui_widget.h"
#include <QFileDialog>
#include <QDebug>
#include <QFile>
#include <QFileInfo>
#include <QTextCodec>
#include <QDateTime>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 点击选取文件按钮，弹出文件对话框
    connect(ui->pushButton,&QPushButton::clicked,this,[=](){
       QString fileName = QFileDialog::getOpenFileName(this,"打开文件","C:/","(*.txt)");
       qDebug() << fileName;
       ui->lineEdit->setText(fileName);

       // 编码格式
//       QTextCodec * codec = QTextCodec::codecForName("gbk");

       // 读取内容到 textEdit 默认支持格式utf-8
       QFile file(fileName);
       // 设置打开方式
       file.open(QIODevice::ReadOnly); // 设置只读
       // 读全部
//       QByteArray array = f.readAll();
       QByteArray array;
       while(!file.atEnd()){
           // 读一行
           array += file.readLine();
       }
        file.close(); // 关闭文件
       // 数据放入textEdit中
        ui->textEdit->setText(array);
//       ui->textEdit->setText(codec->toUnicode(array));

        // QFileInfo 文件信息类
        QFileInfo info(fileName);
        qDebug() << "文件大小:" << info.size() << "后缀名："<< info.suffix() << "文件名称" << info.fileName() << "文件路径" << info.path();
        qDebug() << "创建日期" << info.birthTime().toString("yyyy/mm/dd hh:mm:ss");
        qDebug() << "修改日期" << info.lastModified().toString("yyyy/mm/dd hh:mm:ss");
    });
}

Widget::~Widget()
{
    delete ui;
}

